/********************************** (C) COPYRIGHT *******************************
* File Name          : pll.h
* Author             : nx666
* Version            : V1.0.0
* Date               : 2023/12/09
* Description        : pll接口在这里声明
*******************************************************************************/
#ifndef __PLL_H
#define __PLL_H

#ifdef __cplusplus
extern "C" {
#endif

#include "common_type.h"
#include "module_config.h"
#include "pid.h"

/**********************************宏定义区******************************/


/******************************* *类型定义区******************************/
typedef struct pll{
    pid_  *pid;
    _iq    kslf;
    _iq    Ts;                     //积分时间
    _iq    omega;                  //角速度
    _iq    theta;                  //电角度
    _iq    errThre;                // 一般为pi/6
    _iq    thetaLimit;             //角度最大为 2*pi

    void   (*pll)(struct pll *, _iq coffSine, _iq coffCos);
}pll_;




/*********************************************************************
 * @fn      pllCreate
 *
 * @brief   pll构造函数，
 *              void
 *
 * @return  FUNC_SOK，成功  FUNC_FAIL，失败
 *          
 */
pll_ * pllCreate(void);

#ifdef __cplusplus
}
#endif

#endif /*__PLL_H */